/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: YKH
 * Date: 2022-03-10
 * Time: 18:51
 */
public class contral {
    public static void main(String[] args) {
        int a=-1;
        System.out.println( a>>>1); //此处结果为-2， >>> 无符号右移操作符，不管是正数还是负数，前面都补0.
        System.out.println( -7/2);
    }
    public static void main2(String[] args) {
        //1.逻辑运算符  && 两边的值必须为布尔值
        int a=10;
        int b=20;
        //错误写法 if(a&&b) 报错，两边不是布尔类型的值
        if( a!=10 && b!=20){
            System.out.println( a );
        }
        //如果&&的前一个表达式为假，则 && 后面的表达式不执行
        System.out.println(a>100&&10/0==0);//c此处验证，&&后面的表达式执行了，会报错

        /*2.逻辑与 ||与&&相同
            1. 如果||的前一个表达式为真，则 || 后面的表达式不执行
            2. 两边的表达式 必须为boolean型；*/
        // ！逻辑非操作符，后面也必须是布尔型数据
        //如果 逻辑操作符 && || 都只写1个 如 & 和 | ，则不论前面表达式的值为真还是假，后面的表达式都执行
        // 如果 & 和 | 左右两边的值不为boolean型，则 & 和 | 表示为运算。
        // 如果 & 和 | 一边为boolean型，一边为其他类型会报错。
        int c=1;
        int d=0;
        System.out.println( c&d );
    }
    public static void main1(String[] args) {
        //+=，-=，/=，*=运算符
        int a=20;
        short b=30;
        //此处这样写会报错 short c=a+b;
        short c=0;
        c+=a+b;
        System.out.println(c);//使用 +=运算符就不会报错
    }


}
